package com.rw.common.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * <p>
 *
 * </p>
 *
 * @author Rabit
 * @since 2021-12-20
 */
@TableName("order_info")
@Data
public class OrderInfo implements Serializable {

    private static final long serialVersionUID = 1L;

    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;

    /**
     * 租赁信息id
     */
    private Integer rentInfoId;

    /**
     * 系统的订单号
     */
    private Integer orderNo;

    /**
     * 第三方志支付订单号
     */
    private Integer payOrderNo;

    /**
     * 支付方式1，微信，2支付宝
     */
    private Integer payType;

    /**
     * 最终支付金额
     */
    private Double payActualMoney;

    /**
     * 需要支付的金额
     */
    private Double payNeedMoney;

    /**
     * 优惠券的id，不使用为空
     */
    private Integer payDollarId;

    /**
     * 支付状态：取消支付、支付成功、待支付
     */
    private Integer payStaus;

    /**
     * 支付时间
     */
    private LocalDateTime payTime;


    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public Integer getRentInfoId() {
        return rentInfoId;
    }

    public void setRentInfoId(Integer rentInfoId) {
        this.rentInfoId = rentInfoId;
    }

    public Integer getOrderNo() {
        return orderNo;
    }

    public void setOrderNo(Integer orderNo) {
        this.orderNo = orderNo;
    }

    public Integer getPayOrderNo() {
        return payOrderNo;
    }

    public void setPayOrderNo(Integer payOrderNo) {
        this.payOrderNo = payOrderNo;
    }

    public Integer getPayType() {
        return payType;
    }

    public void setPayType(Integer payType) {
        this.payType = payType;
    }

    public Double getPayActualMoney() {
        return payActualMoney;
    }

    public void setPayActualMoney(Double payActualMoney) {
        this.payActualMoney = payActualMoney;
    }

    public Double getPayNeedMoney() {
        return payNeedMoney;
    }

    public void setPayNeedMoney(Double payNeedMoney) {
        this.payNeedMoney = payNeedMoney;
    }

    public Integer getPayDollarId() {
        return payDollarId;
    }

    public void setPayDollarId(Integer payDollarId) {
        this.payDollarId = payDollarId;
    }

    public Integer getPayStaus() {
        return payStaus;
    }

    public void setPayStaus(Integer payStaus) {
        this.payStaus = payStaus;
    }

    public LocalDateTime getPayTime() {
        return payTime;
    }

    public void setPayTime(LocalDateTime payTime) {
        this.payTime = payTime;
    }

    @Override
    public String toString() {
        return "OrderInfo{" +
        "id=" + id +
        ", rentInfoId=" + rentInfoId +
        ", orderNo=" + orderNo +
        ", payOrderNo=" + payOrderNo +
        ", payType=" + payType +
        ", payActualMoney=" + payActualMoney +
        ", payNeedMoney=" + payNeedMoney +
        ", payDollarId=" + payDollarId +
        ", payStaus=" + payStaus +
        ", payTime=" + payTime +
        "}";
    }
}
